package com.winter.portal.server.mapper;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.winter.portal.api.query.RoleQuery;
import com.winter.portal.server.entity.RoleEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;

import java.io.Serializable;
import java.util.List;
import java.util.Map;
import java.util.Set;

/**
 * <p>
 * 系统规则表 Mapper 接口
 * </p>
 *
 * @author jzyan
 * @since 2023-04-11
 */
public interface RoleMapper extends BaseMapper<RoleEntity> {

    List<RoleEntity> page(IPage page, @Param("uq") RoleQuery roleQuery);

    void deleteRoleResourceByRoleId(Serializable roleId);

    void insertRoleResourceBatch(Map<String, Object> map);

    void updateUserRole(RoleEntity roleEntity);

    void updateRoleResource(RoleEntity roleEntity);

    Set<String> getUsernamesByRoleId(Serializable roleId);
}
